When you first get MakeKISS, you should set up the preferences to reflect your particular style of working. The preferences window can be invoked by selecting Preferences from the iconbar menu (or the main window menu).
The preferences dialog box is actually a scrolling pane; if fully "unrolled" it would look like this:
See also Advanced Configuration
This group of fields defines parameters that can be used in the MakeKISS-generated header comment of dolls.
This is you, or rather, the name which appears in the default doll header as the author of the doll. If you wish to remain anonymous, just leave it blank (or edit the default doll header - see Advanced Preferences).
Your email address; like the author field, this appears in the default doll header. As for the Author field, you can leave it blank or edit the default doll header (see Advanced Preferences).
This group of preferences control the appearance of the PlayKISS windows and menus, and defines the way that PlayKISS handles certain KISS characteristics.
If this option is ticked, the available sets (ie sets including one or more cels) and palette groups will be reflected in the toolbar and the Sets and Palettes menu options. Note, however, that this only applies in Play mode, not in Build mode.
During doll loading, MakeKISS normally simply displays an hourglass indicating progress. If this item is ticked, however, MakeKISS will display a window displaying the file (cel or palette) currently being loaded into memory.
Selecting this will ensure that all French KISS scripting instructions are off by default. FKISS can be re-enabled after startup by selecting the relevant menu item on the iconbar menu or main window menu.
NB Even if French KISS is disabled, any initialise and begin events will be processed, as failure to do so will often make such a doll incomprehensible.
Ticking this option will tell MakeKISS to change the pointer to a hand while
over the doll window.
This control will only take effect the next time MakeKISS is run.
Ticking this option will cause MakeKISS to enlarge the image size specified in a doll to enclose all cels. In previous versions of MakeKISS, this had been the default action; this preference puts the function under user control.
Although still supported, this preference is deprecated. It is
recommended that this option is disabled, and either the "FKISS Only" or
"Limited" form of bounds checking is enabled instead.
This control will take effect the next time a doll is loaded into MakeKISS.
This option allows MakeKISS to load extended palette sets (ie sets with a total palette of more than 256 colours). If this option is not ticked, MakeKISS will report errors when trying to load palettes that will take the total number of colours over 256.
It should be noted, however, that it is currently not possible to convert a
doll from a standard palette to an extended palette after the doll has been
loaded (by loading additional palettes).
This control will take effect the next time a doll is loaded into MakeKISS.
The "Fix" attribute of an object defines how easy it is to move. Originally, this attribute had the range 0-100; objects with a fix of 100 (or greater) were permanently fixed.
The main translation of the original Japanese specification, however, missed this upper limit, and as a result, doll creators have used a range of values to define permanently fixed objects.
If this option is disabled, PlayKISS uses the original definition; if enabled, PlayKISS will apply a rule-of-thumb to attempt to deduce the doll creator's intent.
This control will take effect the next time a doll is loaded into MakeKISS.
Until version 2.48 of MakeKISS, transparency effects in non-Cherry sets has
been achieved by dithering; this mechanism is still supported, and will be
used if this option is selected. If it is not selected, KISS dolls including
any transparency effects will use a 16 or 32 bpp image and transparency will
be achieved by using colour mixing.
This control will take effect the next time a doll is loaded into MakeKISS.
Earlier versions of MakeKISS would not allow items of clothing, etc to snap back to
their original location until the mouse button was released. Enabling this option will
cause such snapback to occur as soon as the user attempt to move it beyond its limiting
distance; this latter behaviour is closer to "classic" KISS.
This control will take effect immediately.
Some FKISS functions display text to the user, but the FKISS specification leaves it to the player software to decide how such display is handled. MakeKISS has two distinct techniques - a scrolling window that pops up whenever text is added, or a Wimp alert box. This preference specified when each approach is used:
Setting | Meaning |
---|---|
Never | The window will never be used - all text output will use a Wimp alert box. This will mean that all text display functions will interrupt any drags in progress. |
Always | The window will always be used. This will mean that text display functions invoked as part of the doll closedown will probably be missed, due to the very short time they will be displayed. |
Except @ end | The window will be used for all text output, unless the function is invoked as part of the doll closedown procedure. Text functions triggered during doll closedown will use a Wimp alert box. |
Classic KISS required that player software should not allow objects to be moved outside the playfield (either by user drags or, more recently, by FKISS functions). However, many players have included different ways of ignoring this limitation, and some dolls will fail if classic bounds checking is enforced. This control tells PlayKISS which form of bounds checking to use.
Setting | Effect on | |
---|---|---|
User drags | FKISS functions | |
Full | This is "classic" bounds checking. Objects cannot be moved even partially off-screen. | |
FKISS Only | Unconstrained.
Objects can be dragged off the playfield. |
Full bounds checking applies. |
Visible | That part of an object that is mapped (i.e. configured to be displayed) cannot be moved off-playfield. However, unmapped portions of the object can be moved off-playfield. | |
Limited | As for "FKISS Only". | As for "Visible" |
This control will take effect the next time a doll is loaded.
This text field is used to specify the search path for extension dolls that use the "INCLUDE" directive. When PlayKISS encounters an INCLUDE directive, it will first check the directory containing the extension doll for the specified base doll. If it is not found there, a hierarchical search of the search path and subordinate directories is made.
You can either type the name of a directory, or you can drag a directory from the filer to the text field.
This group is used to control the flashing of FKISS-active cels (triggered from the "Show active" submenu).
This menu can disable flashing altogether (Off) or select one of three flash rates (Slow, Medium or Fast).
This control is used to specify the number of times that the active cels will flash.
This group of preferences set up various default options.
This option states whether the Virtualise virtual memory system is enabled by default. Virtualise may be enabled or disabled after startup by using the iconbar menu.
This option states whether the Set and Palette switcher toolbar is present by default. The toolbar may be enabled and disabled after startup by using either the iconbar menu or the main window menu.
This preference controls whether the iconbar menu item "Debugger" is enabled when MakeKISS starts.
This option states whether the "Track mouse" function is present by default; this adds an information toolbar, showing basic details of the cel under the mouse pointer. The function may be enabled and disabled after startup by using either the iconbar menu or the main window menu.
This option states whether the "Strict checks" function is present by default; this causes MakeKISS to perform more rigorous checking while loading dolls.
This group of buttons sets up the initial settings for the "Break on" menu item on the FKISS debugger iconbar menu.
@debug | Break when a debug action is processed. |
---|---|
@notify | Break when a notify action is processed. |
Stack | Break when the FKISS event stack hits the limit. |
This group of preferences modifies how the various MakeKISS doll editing and testing windows behave.
This option defines how MakeKISS should handle cels created by importing a sprite file. If ticked, the cel will be immediately loaded into the set.
For ease of use, MakeKISS maintains a list of the most recently loaded dolls; this gadget is used to control the number of dolls in the history list. Selecting a doll in the history submenu of the iconbar menu will immediately load that doll.
Although the KISS cnf file specifies the size of the image window, many doll viewers (including MakeKISS and PlayKISS) will expand the size of this window if necessary to fully enclose all cels.
There are many ways of causing MakeKISS is increase the size of this enclosing window (for example, moving an object with the cursor keys in Build mode). If this option is turned on, the window will automatically be adjusted in extent (and will be shrunk back again if another action undoes the effect). This is potentially highly processor and memory intensive, and may be unacceptably slow on pre-StrongARM or low memory machines.
If you have zoomed the image in or out (the scale is not 1:1) autoresize is automatically disabled. This is a (hopefully) temporary solution to a redraw bug that would otherwise occur when auto-resizing a scaled image.
High fix values can be inconvenient when testing dolls. To alleviate this, you can use the Adjust menu button to emulate several drags on the cel. The value set in this gadget is the number of "normal" drags represented by a single adjust-drag (eg the default value of 5 means that a single adjust-drag fools MakeKISS into believing that 5 drags have been executed).
This version of MakeKISS supports two different arrangements of the control panel. The one shown here is the standard control panel; the alternative control panel has exactly the same controls, but laid out differently. This option is used to select which of the two control panels is used.
NB This configuration item is not dynamic - changes to the setting will not be registered until you quit MakeKISS and restart it.
Selecting this will tell MakeKISS to report errors in the CNF file using Acorn's "Throwback" protocol. If you use a throwback-aware text editor (eg SrcEdit, Zap, StrongEd) this will mean that such errors appear in a text editor window rather than the old type of error window. Double-clicking on an error will then load the CNF file into the editor, and position the cursor at the beginning of the line containing the error.
NB Some dolls (especially those originating from Apple Mac/PowerMac machines) use a non-standard end-of-line sequence. Although MakeKISS does it's best to get the line numbers correct, various text editors disagree about how the line numbering should work, and the cursor can end up in the wrong place. If this happens, try editing the CNF file to replace LF/CR sequences by CR only, and then reload the doll. With a bit of luck, the line numbering will then be right.
This configuration item will take affect as soon as the next doll is loaded.
One of the views on the "Cels & groups" window shows a list of cels in the present doll (shown in display order). If this option is enabled, dragging a cel (in the cel view) will alter the cel ordering, in a similar manner to, but often more convenient than, the Order bump arrows on the main control panel.
If the "Drag re-orders cels" option is enabled, redrawing of the window is usually only performed once the drag is completed. If this option is enabled, however, the window is refreshed "on-the-fly".
This group of preferences is used to fine-tune MakeKISS for the processor and memory available.
Cherry KISS true colour sets can be very memory intensive. On low-memory machines without Virtualise, they can be too big to load using 32 bits per pixel (bpp). MakeKISS can be configured to use 17 bpp (5 bits each of red, green and blue plus 2 transparency bits) rather than 32 bpp, which approximately halves the memory requirements; however, this is at the expense of a significant impact on speed.
As optimising for memory reduces the number of transparency bits from 8 to 2, it will also degrade the quite subtle shading effects that are used by some dolls.
By default, MakeKISS allows the dynamic area used for cels a 16MB logical memory space (although no more memory is actually used than is necessary). This may not be adequate for some Cherry KISS dolls, so this control is allows the memory space to be expanded.
This preference can somewhat reduce the processor burden of dolls that use a lot of complex FKISS, especially timers. The higher the setting, the less the processor burden of the doll. As high values also reduce the responsiveness of the doll to user interaction, it should be set as low as possible. In practice, a StrongARM or XScale is normally perfectly happy with a latency of 1.
Irrespective of how much updating is going on internally, the visible image is
only updated at regular intervals; this preference defines how frequently the image
is updated. Roughly speaking, the image is updated 100/latency
times per
second, so the lower the latency the more responsive the doll will be. In practice,
few dolls impose such demands that an update latency of higher than 1 is required on
a StrongARM-powered machine, unless there are other processor-intensive tasks going on
at the same time.
This group of preferences deals with how the FKISS debugger is displayed - fonts, colours, etc.
This item is used to set the normal text foreground colour for the various debugger windows
This configuration item will take affect immediately.
This item is used to set the background colour for the various debugger windows
This configuration item will take affect immediately.
This item is used to set the foreground colour for highlighted text in the various debugger windows
This configuration item will take affect immediately.
This item is used to set the foreground colour for comments in the various debugger windows
This configuration item will take affect immediately.
This item is used to set the font face used in the various debugger windows
This configuration item will take affect immediately.
This item is used to set the font size used in the various debugger windows
This configuration item will take affect immediately.
This item controls whether item-level comments (defined by the main control panel) appear in the various debugger windows where object numbers are referenced. Of course, if a particular object does not have a comment associated with it, nothing will appear.
This configuration item will take affect immediately.
In addition to the controls above, the non-scrolling part of the window contains a set of four buttons, which control the handling of any changes to the preferences:
In addition to the main preferences window, there are a number of other items that can be modified to suit your purposes; these are edited by finding the MakeKISS "Choices" directory, and manually editing the files therein.
The MakeKISS Choices directory is created by MakeKISS when it is first run, and it is created inside <Choices$Write> or <Choices$Dir>. This is normally located in !Boot.Choices. Open !Boot by double-clicking on it with the shift key held down, then Choicews, and then open the KISS directory.
Inside <Choices$Dir>.KISS, you will find some or all of the following files: